package com.xingkeduo.business.user.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import com.xingkeduo.business.transformation.json.JobseekerJTO;
import com.xingkeduo.business.transformation.json.JobseekerJobJTO;
import com.xingkeduo.business.transformation.json.JobseekerSocialJTO;
import com.xingkeduo.business.user.domain.ManageInfoDomain;
import com.xingkeduo.pojo.query.JobseekerJobQO;
import com.xingkeduo.pojo.query.JobseekerQO;
import com.xingkeduo.pojo.query.JobseekerSocialQO;
import com.xingkeduo.pojo.table.JobseekerTO;
import com.xingkeduo.util.pojo.base.BaseController;
import com.xingkeduo.util.pojo.domain.Page;
import com.xingkeduo.util.pojo.domain.PageJTO;
import com.xingkeduo.util.tool.ReturnUtil;

/**
 * 求职者
 * 
 * @author 高杰
 * @time 2018年12月24日 下午5:40:05
 * @description
 */
//@CrossOrigin
@RestController
@RequestMapping("/cms/jobseeker/succ")
public class CmsJobseekerSuccListController extends BaseController {
	@Autowired
	private ManageInfoDomain manageInfoDomain;

	/**
	 * 求职者列表接口
	 * 
	 * @author 高杰
	 * @time 2018年12月29日 上午11:52:26
	 * @param urlParam
	 * @return
	 */
	@GetMapping(value = "/{urlParam:.+}")
	public String doGet(@PathVariable String urlParam, int page, int limit) {
		returnUtil = new ReturnUtil();
		try {

			JobseekerQO jobseekerQuery = JobseekerJTO.createQueryForAssess(urlParam);
			JobseekerJobQO jobseekerJobQuery = JobseekerJobJTO.createQueryForList(urlParam);
			JobseekerSocialQO jobseekerSocialQuery = JobseekerSocialJTO.createQueryForList(urlParam);
			Page<JobseekerTO> pageDO = new Page<JobseekerTO>(page, limit);

			return returnUtil.getSuccess(PageJTO.toJson(pageDO, JobseekerJTO.toJson(manageInfoDomain
					.getJobseekersWithoutRate(jobseekerQuery, jobseekerJobQuery, jobseekerSocialQuery, pageDO))));
		} catch (Throwable t) {
			return dealException(t, returnUtil);
		}
	}
}
